package br.com.insight.consultoria.negocio.bo;

import br.com.insight.consultoria.entity.UsuarioPadrao;
import br.com.insight.consultoria.erro.exception.InsightConstants;
import br.com.insight.consultoria.erro.exception.InsightException;
import br.com.insight.consultoria.erro.exception.SistemaException;
import br.com.insight.consultoria.integracao.dao.interfacedao.UsuarioPadraoDAO;
import br.com.insight.consultoria.negocio.bo.interfacebo.UsuarioPadraoIntefaceBO;


public class UsuarioPadraoBO implements UsuarioPadraoIntefaceBO{
	
	private UsuarioPadraoDAO usuarioPadraoDAO;
	
	@Override
	public void inserir(UsuarioPadrao usuarioPadrao) throws InsightException {
		
		try{
			
			getUsuarioPadraoDAO().inserir(usuarioPadrao);
			
			}catch(InsightException exception){
				
				throw exception;
				
			}catch(Exception exception){
				
				throw new SistemaException(InsightConstants.MENSAGEM_ERRO_NAO_TRATADO,exception);
				
		}
		
	}
	
	@Override
	public void alterar(UsuarioPadrao usuarioPadrao) throws InsightException {
		
		try{
			
			getUsuarioPadraoDAO().alterar(usuarioPadrao);
			
			}catch(InsightException exception){
				
				throw exception;
				
			}catch(Exception exception){
				
				throw new SistemaException(InsightConstants.MENSAGEM_ERRO_NAO_TRATADO,exception);
				
			}
		
	}
	
	
	public UsuarioPadrao getUsuarioPadrao(Long idUsuarioPadrao)throws InsightException {
		
		try{
		
		return getUsuarioPadraoDAO().getUsuarioPadrao(idUsuarioPadrao);
		
		}catch(InsightException exception){
			
			throw exception;
			
		}catch(Exception exception){
			
			throw new SistemaException(InsightConstants.MENSAGEM_ERRO_NAO_TRATADO,exception);
			
		}
	
	}
	
	public UsuarioPadraoDAO getUsuarioPadraoDAO() {
		return usuarioPadraoDAO;
	}

	public void setUsuarioPadraoDAO(UsuarioPadraoDAO usuarioPadraoDAO) {
		this.usuarioPadraoDAO = usuarioPadraoDAO;
	}
	
}
